﻿using Architecture.Domain.TraceabilityManage;
using Architecture.Domian.DTO;

namespace Architecture.Domain.Services.Interface
{
    public interface IDeepProcessingService
    {
        Task<int> AddDeepProcessing(DeepProcessing deep);

        Task<int> UpdateDeepProcessing(DeepProcessing deep);

        Task<DeepProcessing> GetDeepProcessingInfo(string? productionLot);

        Task<List<PictureDTO>> GetDeepProcessingPicture(string? productionLot);

        Task<int> BatchDeepProcessingPicList(string? productionLot, string? urlImg);

        Task<int> AddCorporation(Corporation corporation);

        Task<Corporation> GetCorporationInfo(string? productionLot, int DeepProcessingCompanyId);

        Task<int> UpdateCorporation(Corporation corporation);

        Task<List<PictureDTO>> GetCorporationPicture(string? productionLot, int DeepProcessingCompanyId);

        Task<int> BatchCorporationPicList(string? productionLot, string? urlImg, int dpId);

        Task<int> BatchSupplier(Supplier supplier, int flag);

        Task<List<PictureListDTO>> GetSupplierPicture(string? productionLot);
    }
}
